// 链表反转

import { ListNode } from './00-utils';

const reverseList = (head: ListNode) => {
  // 定义一个前驱结点
  let pre: ListNode | null = null;
  // 定义当前节点
  let cur: ListNode | null = head;
  while (cur != null) {
    // 记录下当前节点的后继节点
    let next = cur.next;
    // 反转
    cur.next = pre;
    // pre向前一步
    pre = cur;
    // cur往前走一步
    cur = next;
  }
  return pre;
};
